Tema 1

  1. Defina una clase que represente una matriz de números enteros de dimensiones N x M. Defina e implemente el método getValor (x,y) que devuelve el entero en la posición (x,y) de la matriz.

 

  1. La sucesión de Fibonacci es una sucesión definida por recurrencia. Los números de Fibonacci quedan definidos por las siguientes ecuaciones para n>=0:

    f0=0 f1=1 fn=fn1+fn2

     

    Implemente una clase que represente un generador de términos de la serie de Fibonacci. El diseño de la clase se muestra en el siguiente diagrama UML:

     

    UML_fibonacci

     

    Donde:

    • El método mostrarSerie (int termino) imprime por pantalla la serie de Fibonacci hasta el término que indica el parámetro.
    • El método fibonacci(n) devuelve el término n-ésimo de la sucesión.

 

  1. Responda a las siguientes preguntas con respecto al ejercicio anterior:

 

  1. Dada la siguiente codificación de la clase BufferMuestras, represéntela usando UML.

    Solución:

    UML_BufferMuestras

 

  1. Tomando la definición de la clase del ejercicio anterior, indique cuál sería su interfaz pública y cuál sería su interfaz privada.

    Su interface pública sería:

    • getItem(pos:Integer)
    • setItem(pos:Integer, m:Muestra)
    • BufferMuestras(n:Integer)

    Su interface privada sería:

    • cleanBuffer( )

 

  1. Realice un análisis utilizando la técnica de tarjetas CRC sobre la siguiente definición textual de una clase:

    «Una Cuenta Bancaria mantiene un saldo activo, un titular de cuenta, una fecha de apertura y una serie de comisiones asociadas. Además, la cuenta corriente mantiene una serie de domiciliaciones, que, llegada la fecha en la que están establecidas decrementan el saldo activo de la cuenta».

CuentaBancaria
Responsabilidad
Colaboradores
- Mantener saldo activo
- Mantener titular de cuenta
- Mantener comisiones
- Mantener domiciliaciones
- Decrementar saldo
- Titular
- Domiciliacion
- Comision

 

  1. Dada la siguiente definición de clase:

 

Solución:

 

Defina las instrucciones necesarias para llevar a cabo las siguientes acciones:

  1. Dada la siguiente clase UML, implemente el método incrementarSalario (int inc), donde inc representa el incremento porcentual sobre el salario. Nota: el atributo salario representa el salario anual.

    UML_Empleado

 

  1. Complete la definición de la clase anterior con los métodos get que considere que faltan.

UML_Empleado_solucion